Autonomously controlling a vehicle is a complex task that includes many different aspects. As one example, for a vehicle to operate autonomously, the vehicle generally uses multiple different sensors to gather information about surroundings continuously. The vehicle analyzes the gathered data to produce a representation of the present environment that the vehicle uses to, for example, plan a route, avoid obstacles, navigate, and so on. However, while the vehicle can gather the information about the surroundings and generally produce the representation, this can be a computationally intensive effort that the vehicle may not be equipped to perform in an adequate timeframe. Moreover, the representation produced by the vehicle may include errors that can cause difficulties when using the provided representation for various tasks.
Thus, in various implementations, the vehicle also uses a map of a local region in addition to the gathered information to provide a more concise representation of the surrounding environment. The map can be a topological or other type of map that includes information gathered by other vehicles over multiple passes through various locations depicted by the map. Generally, this map is obtained from, for example, a central repository or other source that combines the information together into a global view. That is, the map may be derived from the underlying data in order to provide a globally consistent representation of the region. However, this approach generally results in a map that can be locally inaccurate. For example, the map may generally align with highways and other landmarks across a wide region, but locally the map may not be accurately aligned with lane markers at an intersection, precise locations of off-ramps, and so on. Accordingly, when the vehicle uses the map for various autonomous operations, difficulties may arise from the inaccuracies within the map.